const base_base = {
    "paramType": "base",
    "paramSubType": "base_base",
    "paramValue": {"network": {"ip": "170.10.100.105", "type": {"value": "ethernet", "options": ["ethernet", "wlan", "4g"], "defaultValue": "ethernet"}}, "language": {"value": "zh", "options": ["zh", "en", "fr", "es"], "defaultValue": "zh"}},
}

const version_partVersion = {
    "paramType": "version",
    "paramSubType": "version_partVersion",
    "paramValue": {"parts":[{"code":"ui","version":"V1.0"},{"code":"backend","version":"V1.1"},{"code":"driver","version":"50"},{"code":"iot","version":"25"}]},
}

const wok_heat = {
    "paramType": "wok",
    "paramSubType": "wok_heat",
    "paramValue": {"cookProtectTemp":{"value":260,"defaultValue":260,"scope":[260,300]}},
}

const wok_wokPosition = {
    "paramType": "wok",
    "paramSubType": "wokPosition",
    "paramValue": {"positions":[{"code":1,"angle":{"value":0,"defaultValue":0,"scope":[0,5]}},{"code":2,"angle":{"value":30,"defaultValue":30,"scope":[25,35]}},{"code":3,"angle":{"value":45,"defaultValue":45,"scope":[40,55]}},{"code":4,"angle":{"value":80,"defaultValue":80,"scope":[75,85]}},{"code":5,"angle":{"value":110,"defaultValue":110,"scope":[100,120]}}]},
}

const wok_wokSpeed = {
    "paramType": "wok",
    "paramSubType": "wokSpeed",
    "paramValue": {"speeds":[{"code":1,"speed":{"value":10,"defaultValue":10,"scope":[8,13]}},{"code":2,"speed":{"value":30,"defaultValue":30,"scope":[25,35]}},{"code":3,"speed":{"value":50,"defaultValue":45,"scope":[40,55]}},{"code":4,"speed":{"value":5,"defaultValue":5,"scope":[0,10]}}]} 
}

const seasoning_pot = {
    "paramType": "seasoning",
    "paramSubType": "pot",
    "paramValue": {"pots":[{"potId":1,"potType":1,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070010400105002","defaultValue":"070010400105002"}},{"potId":2,"potType":2,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070010400b05001","defaultValue":"070010400b05001"}},{"potId":3,"potType":3,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070010400205003","defaultValue":"070010400205003"}},{"potId":4,"potType":4,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400d05007","defaultValue":"070020400d05007"}},{"potId":5,"potType":5,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400d05008","defaultValue":"070020400d05008"}},{"potId":6,"potType":6,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400k05001","defaultValue":"070020400k05001"}},{"potId":7,"potType":7,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400f0500h","defaultValue":"070020400f0500h"}},{"potId":8,"potType":8,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400h05006","defaultValue":"070020400h05006"}},{"potId":9,"potType":9,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400h05004","defaultValue":"070020400h05004"}},{"potId":10,"potType":10,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400h05001","defaultValue":"070020400h05001"}},{"potId":11,"potType":11,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400l05001","defaultValue":"070020400l05001"}},{"potId":12,"potType":12,"physCode":{"value":1,"defaultValue":1},"ingrCode":{"value":"070020400c05001","defaultValue":"070020400c05001"}}]}
}


const upkeepRemind_ingrCalibration = {
    "paramType": "upkeepRemind",
    "paramSubType": "ingrCalibration",
    "paramValue": {"completionStandard":{"value":0,"defaultValue":0,"options":[0,1]},"remindRules":[{"enable":0,"type":1,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":2,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":3,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":4,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":5,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}}]}
}

const upkeepRemind_ingrCheck = {
    "paramType": "upkeepRemind",
    "paramSubType": "ingrCheck",
    "paramValue": {"remindRules":[{"enable":0,"type":1,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":2,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":3,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":4,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}}]}
}

const upkeepRemind_ingrPipeWash = {
    "paramType": "upkeepRemind",
    "paramSubType": "ingrPipeWash",
    "paramValue": {"remindRules":[{"enable":0,"type":2,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":3,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":4,"remindType":"period","remindPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}}]}
}

const upkeepRemind_wokUpKeep = {
    "paramType": "upkeepRemind",
    "paramSubType": "wokUpKeep",
    "paramValue": {"remindRules":[{"enable":0,"type":6,"remindType":"cron","remindCron":{"value":"0 7 * * *","defaultValue":"0 7 * * *"},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}},{"enable":0,"type":7,"remindType":"cron","remindCron":{"value":"0 7 * * *","defaultValue":"0 7 * * *"},"punishPeriod":{"value":7,"defaultValue":7,"scope":[0,10]},"punishMeasures":{"value":1,"defaultValue":1,"options":[1,2]}}]}
}

const wokUpkeepSetting_quickWokWash = {
    "paramType": "wokUpkeepSetting",
    "paramSubType": "quickWokWash",
    "paramValue": {"enable":1,"washTime":{"value":0,"defaultVaule":0,"scope":[0,20]},"shakeOffWaterTime":{"value":0,"defaultVaule":0,"scope":[0,20]},"heatingTime":{"value":0,"defaultVaule":0,"scope":[0,20]}}
}

const wokUpkeepSetting_standardWokWash = {
    "paramType": "wokUpkeepSetting",
    "paramSubType": "standardWokWash",
    "paramValue": {"enable":1,"firstWashTime":{"value":0,"defaultVaule":0,"scope":[0,20]},"wokWashPosition":{"value":1,"defaultVaule":1,"options":[0,1]},"waterVolume":{"value":500,"defaultVaule":500,"scope":[500,1500]},"heatingWashTime":{"value":30,"defaultVaule":30,"scope":[20,90]},"wokTemperature":{"value":80,"defaultVaule":80,"scope":[30,100]},"wokDirection":{"value":1,"defaultVaule":0,"options":[0,1,2]},"wokSpeed":{"value":1,"defaultVaule":1,"options":[0,1,2]},"secondWashTime":{"value":10,"defaultVaule":10,"scope":[6,20]},"shakeOffWaterTime":{"value":5,"defaultVaule":30,"scope":[5,30]},"heatingTime":{"value":10,"defaultVaule":13,"scope":[6,20]}}
}

const wokUpkeepSetting_manualWokWash = {
    "paramType": "wokUpkeepSetting",
    "paramSubType": "manualWokWash",
    "paramValue": {"enable":1,"wokWashPosition":{"value":1,"defaultVaule":1,"options":[0,1]},"waterVolume":{"value":500,"defaultVaule":500,"scope":[500,1500]},"heatingWashTime":{"value":30,"defaultVaule":30,"scope":[5,60]},"wokTemperature":{"value":80,"defaultVaule":80,"scope":[30,100]},"wokDirection":{"value":1,"defaultVaule":0,"options":[0,1,2]},"wokSpeed":{"value":1,"defaultVaule":1,"options":[0,1,2]},"washTime":{"value":10,"defaultVaule":10,"scope":[6,20]},"shakeOffWaterTime":{"value":5,"defaultVaule":30,"scope":[5,30]},"heatingTime":{"value":10,"defaultVaule":13,"scope":[6,20]}}
}

const wokUpkeepSetting_wokUpkeep = {
    "paramType": "wokUpkeepSetting",
    "paramSubType": "wokUpkeep",
    "paramValue": {"enable":1,"potId":1,"potType":{"value":1,"defaultVaule":1,"options":[1,2]},"oilPourOut":{"value":1,"defaultVaule":1}}
}

const ingrUpkeepSetting_ingrCheck = {
    "paramType": "ingrUpkeepSetting",
    "paramSubType": "ingrCheck",
    "paramValue": {"enable":1,"settings":[{"potId":1,"potType":1,"qty":{"value":100,"defaultValue":5,"scope":[1,200]}},{"potId":2,"potType":1,"qty":{"value":100,"defaultValue":5,"scope":[1,200]}},{"potId":3,"potType":1,"qty":{"value":100,"defaultValue":5,"scope":[1,200]}},{"potId":4,"potType":2,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":5,"potType":2,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":6,"potType":2,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":7,"potType":2,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":8,"potType":3,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":9,"potType":3,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":10,"potType":3,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}},{"potId":11,"potType":4,"qty":{"value":100,"defaultValue":10,"scope":[1,200]}}]}
}

const ingrUpkeepSetting_ingrPipeWash = {
    "paramType": "ingrUpkeepSetting",
    "paramSubType": "ingrPipeWash",
    "paramValue": {"enable":1,"settings":[{"potId":4,"potType":2,"qty":{"value":100,"defaultValue":800,"scope":[1,2000]}},{"potId":5,"potType":2,"qty":{"value":100,"defaultValue":800,"scope":[1,2000]}},{"potId":6,"potType":2,"qty":{"value":100,"defaultValue":800,"scope":[1,2000]}},{"potId":7,"potType":2,"qty":{"value":100,"defaultValue":800,"scope":[1,2000]}},{"potId":8,"potType":3,"qty":{"value":100,"defaultValue":2000,"scope":[1,2000]}},{"potId":9,"potType":3,"qty":{"value":100,"defaultValue":2000,"scope":[1,2000]}},{"potId":10,"potType":3,"qty":{"value":100,"defaultValue":2000,"scope":[1,2000]}},{"potId":11,"potType":4,"qty":{"value":100,"defaultValue":2000,"scope":[1,2000]}}]}
}

const ingrUpkeepSetting_ingrPipeFill = {
    "paramType": "ingrUpkeepSetting",
    "paramSubType": "ingrPipeFill",
    "paramValue": {"enable":1,"settings":[{"potId":4,"potType":2,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":5,"potType":2,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":6,"potType":2,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":7,"potType":2,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":8,"potType":3,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":9,"potType":3,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}},{"potId":10,"potType":3,"qty":{"value":100,"defaultValue":100,"scope":[1,200]}}]}
}

const otherSetting_oilPipeInsulation = {
    "paramType": "otherSetting",
    "paramSubType": "oilPipeInsulation",
    "paramValue": {"enable":1,"oilPipes":[{"potId":1,"potType":1,"enable":{"value":1,"defaultValue":1}}]}
}

const otherSetting_initialWokTemp = {
    "paramType": "otherSetting",
    "paramSubType": "initialWokTemp",
    "paramValue": {"enable":1,"wokTemp":{"value":35,"defaultValue":35,"scope":[30,100]},"wokPosition":{"value":0,"defaultValue":2,"options":[0,1,2]},"wokPower":{"value":15,"defaultValue":15,"options":[11,15]}}
}


const otherSetting_deliverFood = {
    "paramType": "otherSetting",
    "paramSubType": "otherSetting_deliverFood",
    "paramValue": {"enable":1,"rotate":{"value":1,"defaultValue":1},"StirFrySpeed":{"value":1,"defaultValue":0,"options":[0,1]}}
}

function getBaseParam() {
    return [ 
        base_base,
        version_partVersion,
        wok_heat,
        wok_wokPosition,
        wok_wokSpeed
    ]
}

function getSeasonPrarm() {
    return [ 
        seasoning_pot
    ]
}


function getRemindPrarm() {
    return [ 
        upkeepRemind_ingrCalibration,
        upkeepRemind_ingrCheck,
        upkeepRemind_ingrPipeWash,
        upkeepRemind_wokUpKeep,
    ]
}

function getWokUpkeepSettingParam() {
    return [ 
        wokUpkeepSetting_quickWokWash,
        wokUpkeepSetting_standardWokWash,
        wokUpkeepSetting_manualWokWash,
        wokUpkeepSetting_wokUpkeep,
    ]
}

function getIngrUpkeepSettingParam() {
    return [ 
        ingrUpkeepSetting_ingrCheck,
        ingrUpkeepSetting_ingrPipeFill,
        ingrUpkeepSetting_ingrPipeWash,
    ]
}

function getOtherSettingParam() {
    return [ 
        otherSetting_oilPipeInsulation,
        otherSetting_initialWokTemp,
        otherSetting_deliverFood
    ]
}

module.exports = {
   getBaseParam, getSeasonPrarm, getRemindPrarm, getWokUpkeepSettingParam, getIngrUpkeepSettingParam, getOtherSettingParam
}